package trace

import (
	"context"
	"errors"

	bytedtracer "code.byted.org/bytedtrace/interface-go"
	"code.byted.org/bytertc/whiteboard_server/biz/pkg/biz_error"
)

func TagServerSpanError(ctx context.Context, err error) {
	span := bytedtracer.GetSpanFromContext(ctx)
	bizErr := &biz_error.Error{}
	if !errors.As(err, &bizErr) {
		bizErr = biz_error.UnknownError.Wrap(err).(*biz_error.Error)
	}
	bytedtracer.SetIsError(span, true)
	bytedtracer.SetErrorMessage(span, bizErr.Error())
	bytedtracer.SamplingTrace(span, bytedtracer.DebugTrace)
}
